package com.sskj.level.http;


import com.lzy.okgo.request.GetRequest;
import com.lzy.okgo.request.PostRequest;
import com.sskj.lib.bean.PageBean;
import com.sskj.level.bean.PingCangType;
import com.sskj.level.bean.TradeInfoBean;
import com.sskj.level.bean.TradeListBean;
import com.sskj.lib.bean.StockCoinBean;
import com.sskj.lib.bean.SysConfigBean;
import com.sskj.lib.bean.WSFiveBean;
import com.sskj.common.base.HttpData;

import java.util.List;

/**
 * 作者 :吕志豪
 * 简书：https://www.jianshu.com/u/6e525b929aac
 * github：https://github.com/lvzhihao100
 * 描述：
 * 创建时间：2018-10-15 14:08
 */
public interface IHttpService {
    /**
     * 获取产品信息
     *
     * @param code
     * @return
     */
    PostRequest<HttpData<List<StockCoinBean>>> getProduct(String code);

    GetRequest<HttpData<TradeInfoBean>> getRisk();

    /**
     * 一键平仓
     */
    PostRequest<HttpData> levelAllPc(String id, String stockCode);


    /**
     * 查询用户下单记录
     *
     * @return
     */

    GetRequest<HttpData<PageBean<TradeListBean>>> getTradeList(String startDate, String endDate, String type, String code);

    GetRequest<HttpData<PageBean<TradeListBean>>> getTradeList(String type, String code);

    /**
     * 获取币币交易上下列表数据
     *
     * @param code
     */
    PostRequest<HttpData<WSFiveBean>> getPankou(String code);

    PostRequest<HttpData> createOrder(String entrustLot, String buyPrice, String buyBillType, String stockCode, String billPriceType, String stopProfit, String stopLoss, String lever);

    /**
     * 获取系统配置信息
     *
     * @param type
     * @return
     */
    PostRequest<HttpData<List<SysConfigBean>>> getSysConf(String type);

    PostRequest<HttpData> pingCang(String orderId);

    PostRequest<HttpData> cancelOrder(String orderId);


    PostRequest<HttpData> setStop(String orderId, String stopProfitPrice, String stopLossPrice);

    GetRequest<HttpData<List<PingCangType>>> getPingCangType();
}